package com.newviews.tcmip.service.inf;

import com.newviews.tcmip.common.model.PageModel;
import com.newviews.tcmip.common.model.ResultModel;
import com.newviews.tcmip.pojo.po.EtcmDiseasePo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.newviews.tcmip.pojo.po.EtcmDiseaseTypePo;
import com.newviews.tcmip.pojo.vo.EtcmCommonBaseInfoRespVO;
import com.newviews.tcmip.pojo.vo.export.EtcmDiseaseExportReqVO;
import com.newviews.tcmip.pojo.vo.index.EtcmIndexStatusticsRespVO;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 疾病基本信息 服务类
 * </p>
 *
 * @author lxc
 * @since 2024-03-01
 */
public interface EtcmDiseaseServiceInf extends IService<EtcmDiseasePo> {
    ResultModel<PageModel<Map<String,String>>> getIndexPage(String prepositionContent,String content, String langCode, String uiTypeCode, Integer pageNo, Integer pageSize, String sortType,String type);
    ResultModel<EtcmIndexStatusticsRespVO> getStatisticsDisease(String prepositionContent, String langCode, String uiTypeCode, String type);
    List<Map<String, String>> getDiseaseDownload(EtcmDiseaseExportReqVO reqVO);


    ResultModel<PageModel<Map<String,String>>> getPage(String content, String langCode, String uiTypeCode, Integer pageNo, Integer pageSize, String sortType,String type);

    List<Map<String, String>> downloadDisease(String type, String sortType, String content, String langCode, String uiTypeCode);

    ResultModel<List<EtcmCommonBaseInfoRespVO>>getDetails(String diseaseId, String langCode, String uiTypeCode, String content);

    ResultModel<PageModel<Map<String,String>>> getHerb(String content, String diseaseId, String langCode, String uiTypeCode, Integer pageNo, Integer pageSize, String sortType);

    ResultModel<PageModel<Map<String,String>>> getIngr(String content, String diseaseId, String langCode, String uiTypeCode, Integer pageNo, Integer pageSize, String sortType);

    ResultModel<PageModel<Map<String,String>>> getPrescription(String content, String diseaseId, String langCode, String uiTypeCode, Integer pageNo, Integer pageSize, String sortType);

    List<Map<String,String>> getDiseaseList(String content, String langCode, String uiTypeCode);



    List<Map<String,String>> getDiseaseDetails(String diseaseId, String content, String langCode,String uiTypeCode);

    List<Map<String,String>> getPrescriptionList(String content, String diseaseId, String langCode, String uiTypeCode,String sortType);

    List<Map<String,String>> getHerbList(String content, String diseaseId, String langCode, String uiTypeCode,String sortType);

    List<Map<String,String>> getIngrList(String content, String diseaseId, String langCode, String uiTypeCode,String sortType);

    ResultModel<List<EtcmDiseaseTypePo>> getDiseaseTypeList(String langCode);

    ResultModel<Map<String, String>> getStatistics(String content);



}
